Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JS] advAJAX i przypisanie wyniku do zmiennej
skowron-line
post
Post #1





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Witam, mam taką funkcję.
  1. function get_comment( id_aut, miesiac_rok )
  2. {
  3. var comment = 'wtf??';
  4. advAJAX.get({
  5. url: 'ajax/rap_analiza_oper_typ_rap_5_get_comment.ajax.php',
  6. mimeType: 'text/html',
  7. parameters:
  8. {
  9. "id_automatu": id_automatu,
  10. "data": miesiac_rok
  11. },
  12. onSuccess : function( obj )
  13. {
  14. alert( obj.responseText );
  15. comment = obj.responseText;
  16. }
  17. });
  18. return comment;
  19. }

zmienna comment nie zostaje ustawiona ale alert się wykonuje i pokazuje wartość obj.responseText; Dlaczego (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

Ten post edytował skowron-line 22.07.2009, 14:12:59
Go to the top of the page
+Quote Post
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Bo ajax wykonuje sie w sposób asynchroniczny (nieblokujący przeglądarki), wiec w momecie wywoływania twojego returna comment nie miało jeszcze ustawionej wartości, dlatego powinieneś wykonywać funkcję ustawiająca komentarz w zdarzeniu onsuccess albo przelaczyc advajax-a w tryb synchroniczny (nie bedzie mogl nic zrobic w oknie przegladarki na czas wykonywania skryptu) ale tego nie polecam.
Go to the top of the page
+Quote Post
skowron-line
post
Post #3





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(wookieb @ 22.07.2009, 13:19:16 ) *
Bo ajax wykonuje sie w sposób asynchroniczny (nieblokujący przeglądarki), wiec w momecie wywoływania twojego returna comment nie miało jeszcze ustawionej wartości


czyli dajac tak
  1. function get_comment( id_aut, miesiac_rok )
  2. {
  3. var comment = 'wtf??';
  4. advAJAX.get({
  5. url: 'ajax/rap_analiza_oper_typ_rap_5_get_comment.ajax.php',
  6. mimeType: 'text/html',
  7. parameters:
  8. {
  9. "id_automatu": id_automatu,
  10. "data": miesiac_rok
  11. },
  12. onSuccess : function( obj )
  13. {
  14. return obj.responseText;
  15. }
  16. });
  17.  
  18. }
  19.  
  20.  
  21. function x()
  22. {
  23. alert( get_comment( id_aut, miesiac_rok );
  24. }

funkcja nie zwrocie mi obj.responseText (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

Ten post edytował skowron-line 22.07.2009, 14:30:12
Go to the top of the page
+Quote Post
wookieb
post
Post #4





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




Sprawdziłeś? Jak widać nie. Ale dziś mam dobre serce i powiem. Nie.
Go to the top of the page
+Quote Post
skowron-line
post
Post #5





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

Ostrzeżenie: (0%)
-----


Cytat(wookieb @ 22.07.2009, 13:33:22 ) *
Sprawdziłeś? Jak widać nie. Ale dziś mam dobre serce i powiem. Nie.

Stary jasne że sprawdziłem nie urodziłem się wczoraj, chcialem zebyś mi to potwierdził.

wookieb++ musze powiedzieć ze sporo wiesz.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 16.09.2025 - 08:17